package abacab.actor.queue;

import java.util.Queue;

import abacab.message.Envelope;

import com.typesafe.config.Config;

/**
 * Represents a factory for queues. The built queues must allow concurrent access.
 */
public interface QueueFactory {
	/**
	 * Build the queue to use for an actor
	 * 
	 * @param config
	 *          the configuration
	 * @return the queue
	 */
	@SuppressWarnings("rawtypes")
	Queue<Envelope> buildQueue(Config config);
}